s = csv_lineparse(s, ",", "", linecount);
i = 0;
+ bool header = false;
while (s) {
switch (ozi_objective) {
case trkdata:
+ wpt_tmp = waypt_new();
ozi_parse_track(i, s, wpt_tmp, trk_name);
break;
case rtedata:
if (buff[0] == 'R') {
ozi_parse_routeheader(i, s, wpt_tmp);
+ header = true;
} else {
ozi_parse_routepoint(i, s, wpt_tmp);
}
switch (ozi_objective) {
case trkdata:
if (linecount > 6) {/* skipping over file header */
- ozi_convert_datum(wpt_tmp);
- track_add_wpt(trk_head, wpt_tmp);
+ ozi_convert_datum(wpt_tmp);
+ track_add_wpt(trk_head, wpt_tmp);
} else {
waypt_free(wpt_tmp);
}
break;
case rtedata:
- if (linecount > 5) {/* skipping over file header */
+ if (linecount > 5 && wpt_tmp) {/* skipping over file header */
ozi_convert_datum(wpt_tmp);
+ if (!header) {
route_add_wpt(rte_head, wpt_tmp);
+ }
} else {
waypt_free(wpt_tmp);
}
--- /dev/null
+OziExplorer Route File Version 1.0\r
+WGS 84\r
+Reserved 1\r
+Reserved 2\r
+\r
+\r
+\r
+R,0,1 COSTANERO JA,,255\r
+W,0,1,268,MPCHIC, -34.445850, -58.523720,40507.8513889,53, 0, 3, 0, 65535,MARINA PUNTA CHICA, 0, 0\r
+W,0,2,205,JA12, -34.447380, -58.507270,41344.8282060, 0, 0, 3, 0, 65535,, 0, 0\r
+R,1,1 PCHI COLONIA,,16711680\r
+W,1,1,121,COLONI, -34.467500, -57.854170,0.0000000,35, 0, 3, 0, 65535,07-OCT-00 18:22, 0, 0\r
+W,1,2,118,COLBO3W , -34.477470, -57.861670,41154.0041088, 0, 0, 3, 0, 65535,, 0, 0\r
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<gpx version="1.0" creator="GPSBabel - http://www.gpsbabel.org" xmlns="http://www.topografix.com/GPX/1/0">
+ <time>1970-01-01T00:00:00Z</time>
+ <bounds minlat="-34.477470000" minlon="-58.523720000" maxlat="-34.445850000" maxlon="-57.854170000"/>
+ <rte>
+ <name>1 COSTANERO JA</name>
+ <rtept lat="-34.445850000" lon="-58.523720000">
+ <time>2010-11-25T20:26:00Z</time>
+ <name>MPCHIC</name>
+ <cmt>MARINA PUNTA CHICA</cmt>
+ <desc>MARINA PUNTA CHICA</desc>
+ </rtept>
+ <rtept lat="-34.447380000" lon="-58.507270000">
+ <time>2013-03-11T19:52:37Z</time>
+ <name>JA12</name>
+ </rtept>
+ </rte>
+ <rte>
+ <name>1 PCHI COLONIA</name>
+ <number>1</number>
+ <rtept lat="-34.467500000" lon="-57.854170000">
+ <time>2036-02-05T06:28:16Z</time>
+ <name>COLONI</name>
+ <cmt>07-OCT-00 18:22</cmt>
+ <desc>07-OCT-00 18:22</desc>
+ </rtept>
+ <rtept lat="-34.477470000" lon="-57.861670000">
+ <time>2012-09-02T00:05:55Z</time>
+ <name>COLBO3W </name>
+ </rtept>
+ </rte>
+</gpx>
gpsbabel -i tpg -f ${REFERENCE}/tpg.tpg -o mxf -F ${TMPDIR}/topo.mxf
compare ${TMPDIR}/tpg.mxf ${TMPDIR}/topo.mxf
-
-# OZI (OziExplorer 1.1) file format
-rm -f ${TMPDIR}/oz.wpt ${TMPDIR}/ozi.wpt
-gpsbabel -i ozi -f ${REFERENCE}/ozi.wpt -o ozi -F ${TMPDIR}/oz.wpt
-gpsbabel -i ozi -f ${TMPDIR}/oz.wpt -o ozi -F ${TMPDIR}/ozi.wpt
-compare ${TMPDIR}/ozi.wpt ${REFERENCE}
-
# Holux support is a little funky to test. Becuase it loses precision,
# if we convert it to another format, we lose accuracy (rounding) in the
# coords, so converting it so something else and comparing it never works.
gpsbabel -i holux -f ${REFERENCE}/paris.wpo -o holux -F ${TMPDIR}/paris.wpo
# compare ${REFERENCE}/paris.wpo ${TMPDIR}/paris.wpo
-
-
# GPSPilot Tracker for PalmOS
# This test is eerily similar to the NAV Companion test. In fact, the
# converted reference file (magnavr.gpu) is identical.
--- /dev/null
+
+# OZI (OziExplorer 1.1) file format
+rm -f ${TMPDIR}/oz.wpt ${TMPDIR}/ozi.wpt
+gpsbabel -i ozi -f ${REFERENCE}/ozi.wpt -o ozi -F ${TMPDIR}/oz.wpt
+gpsbabel -i ozi -f ${TMPDIR}/oz.wpt -o ozi -F ${TMPDIR}/ozi.wpt
+compare ${TMPDIR}/ozi.wpt ${REFERENCE}
+
+# Test Ozi routes.
+gpsbabel -i ozi -f ${REFERENCE}/route/ozi.rte -o gpx -F ${TMPDIR}/ozi~gpx.gpx
+compare ${TMPDIR}/ozi~gpx.gpx ${REFERENCE}/route/